package syntaxtree;
import symbol.Symbol;
import visitor.ImperativeSymbolTableVisitor;
import visitor.TypeCheckVisitor;
import visitor.Visitor;
import visitor.TypeVisitor;

public class Formal {
  public Type t;
  public Identifier i;
 
  public Formal(Type at, Identifier ai) {
    t=at; i=ai;
  }

  public void accept(Visitor v) {
    v.visit(this);
  }

  public Type accept(TypeVisitor v) {
    return v.visit(this);
  }

	public Object accept(ImperativeSymbolTableVisitor v) {
		return v.visit(this);
	}

	public Symbol accept(TypeCheckVisitor v) {
		return v.visit(this);
	}
}

